home *** CD-ROM | disk | FTP | other *** search
/ Atlas of US Presidents / Atlas of US Presidents - Phonics Shuttle (General Admission Software).BIN / aomc.mst < prev    next >
Text File  |  1995-11-16  |  30KB  |  841 lines

  1. '****************************************************************************
  2. '**                  AOMC Install Script - Doc Apps                        **
  3. '****************************************************************************
  4. DIM Arg$(4)                  '' Set maximum command line arguments to 4
  5. GOSUB CmdLine                '' MUST be done BEFORE including 'setupapi.inc'
  6. IF Arg$(3) = "NOAUDIO" THEN  '' Check user argument 1
  7.   NOAUDIO% = 1
  8.   GOTO INCs
  9. END IF
  10. IF Arg$(4) = "NOAUDIO" THEN  '' Check user argument 2
  11.   NOAUDIO% = 1
  12.   GOTO INCs
  13. END IF
  14. '$DEFINE AUDIO_ENABLED       '' User hasn't turned audio off, so play it
  15. INCs:
  16. '$INCLUDE 'setupapi.inc'
  17. '$INCLUDE 'msdetect.inc'
  18. '$INCLUDE 'aomc.inc'
  19. '$IFDEF AUDIO_ENABLED        '' User has turned audio off, so don't load func
  20.   DECLARE FUNCTION sndPlaySound LIB "MMSYSTEM.DLL" (AudFilename$, Flags%) AS INTEGER
  21. '$ENDIF ''AUDIO_ENABLED
  22.  
  23. '****************************************************************************
  24. Group$              = "AOMCApps"           '' Group name for Shell
  25. AppTitle$           = "Atlas of U.S. Presidents - V2.1" '' Application Title for Shell
  26. AppExeName$         = "\APRES2.EXE"          '' Application Executable Name for Shell
  27. AppDir$             = "\AP2EXE"            '' Application directory on CD-ROM
  28. ProgRoot$           = "\AP2"               '' Application default directory on HD
  29. RT$                 = "\RUNTIME\"          '' Directory on CD-ROM where VfW Runtime resides
  30. MSOBitmap$          = "AP2.BMP"            '' MS Office bitmap file for AppTitle$
  31. Win3xInfoEXE$       = "WRITE.EXE"          '' Windows 3.x Application to handle InfoFile$
  32. Win95InfoEXE$       = "WORDPAD.EXE"        '' Windows 95 Application to handle InfoFile$
  33. InfoFile$           = "\README.WRI"        '' Information filename - must be compatible with InfoExe$
  34. OtherAppsTitle$     = "Other AOMC Applications"  '' Title for Other Apps Help File
  35. OtherAppsFile$      = "\Others.hlp"         '' Other Apps Help Filename
  36. WantedDiskSize&     = 2048000              '' Disk space needed for minimum installation
  37. FullWantedDiskSize& = 40960000             '' Disk space needed for full installation
  38. '****************************************************************************
  39.  
  40.  
  41. '****************************************************************************
  42. '**                          Beginning of script                           **
  43. '****************************************************************************
  44. INIT:
  45.  
  46.     WIN32ENABLED% = 0
  47.     VfWFailed% = 0
  48.  
  49.     SrcDir$ = GetSymbolValue("STF_SRCDIR")
  50.     SrcDrive$ = MID$(SrcDir$,1,1) + ":"
  51.     WinDir$ = GetWindowsDir()
  52.     WinSysDir$ = GetWindowsSysDir()
  53.     WinSys32Dir$ = WinDir$ + "system32"
  54.  
  55.     OpenLogFile WinDir$ + "AOMC.LOG", 0
  56.     WriteToLogFile ""
  57.     WriteToLogFile "                          AOMC Install LOG file"
  58.     WriteToLogFile ""
  59.     WriteToLogFile "Windows directory is " + WinDir$
  60.     WriteToLogFile ""
  61.     WriteToLogFile "Group      = " + Group$
  62.     WriteToLogFile "AppTitle   = " + AppTitle$
  63.     WriteToLogFile "AppDir     = " + AppDir$
  64.     WriteToLogFile "AppExeName = " + AppExeName$
  65.     WriteToLogFile "SrcDrive   = " + SrcDrive$
  66.     WriteToLogFile ""
  67.     IF NOAUDIO% = 0 THEN
  68.         WriteToLogFile "Audio Enabled."
  69.      ELSE
  70.         WriteToLogFile "Audio Disabled by user."
  71.     END IF
  72.     WriteToLogFile ""
  73.  
  74.     CUIDLL$    = "mscuistf.dll"          ''AOMC user interface dll
  75.     HELPPROC$  = "FHelpDlgProc"          ''Help dialog procedure
  76.  
  77.     MajorVer% = GetWindowsMajorVersion()
  78.     MinorVer% = GetWindowsMinorVersion()
  79.  
  80.     IF  MajorVer% < 3 OR (MajorVer% = 3 AND MinorVer% < 10) THEN
  81.         i% = DoMsgBox("Microsoft Windows version 3.10 or greater is required for this software.  Please upgrade your version of Windows.", "Installation Problem", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  82.         WriteToLogFile "ERROR: Microsoft Windows version was " + str$(MajorVer%) + "." + str$(MinorVer%)
  83.         CloseLogFile
  84.       END
  85.     END IF
  86.  
  87.     ' Use Wowexec to determine version of NT.  3.1 did not stamp wowexec and wow returns 3.1 as version
  88.     IF OnWindowsNT() THEN
  89.       OnNT$ = "TRUE"
  90.       WowVersion$ = GetVersionOfFile(WinSys32Dir$ + "\wowexec.exe")
  91.       IF WowVersion$ = "" THEN
  92.          i% = DoMsgBox("Video for Windows does not run on Windows NT 3.1.  Please upgrade your version of Windows.", "Installation Problem", MB_OK+MB_TASKMODAL+MB_ICONHAND)
  93.          WriteToLogFile "ERROR: Microsoft Windows NT running."
  94.          CloseLogFile
  95.          END
  96.       END IF
  97.     END IF
  98.  
  99.     SetBitmap CUIDLL$, LOGO
  100.     SetTitle AppTitle$ + " - Installation Program"
  101.  
  102.     szInf$ = GetSymbolValue("STF_SRCINFPATH")
  103.     IF szInf$ = "" THEN
  104.             szInf$ = GetSymbolValue("STF_CWDDIR") + "AOMC.INF"
  105.     END IF
  106.     ReadInfFile szInf$
  107.  
  108.     WinDrive$ = MID$(WinDir$, 1, 1)
  109.     DEST$ = WinDrive$ + ":" + ProgRoot$
  110.  
  111. '    ChkSpace
  112. '    ChkDrive
  113. '    MSOffice
  114.  
  115. '**
  116. '** Purpose:
  117. '**     Show and process WELCOME dialog
  118. '****************************************************************************
  119. WELCOME:
  120.     IF NOAUDIO% = 0 THEN
  121.         r% = PlayWAV(SrcDrive$ + "\welcome.wav")
  122.     END IF
  123.     sz$ = UIStartDlg(CUIDLL$, WELCOME, "FInfoDlgProc", APPHELP, HELPPROC$)
  124.     IF sz$ = "CONTINUE" THEN
  125.         UIPop 1
  126.      ELSE
  127.         UIPopAll
  128.         r% = PlayWAV("")
  129.         GOSUB ASKQUIT
  130.         GOTO WELCOME
  131.     END IF
  132.     r% = PlayWAV("")
  133.  
  134.     'i% = DoMsgBox(DEST$,"",MB_TASKMODAL+MB_OK)
  135.     'Run (SrcDir$ + AppDir$ + AppExeName$)
  136.  
  137. OpProc% = 1
  138. GOTO OPTION1
  139.  
  140. '**
  141. '** Purpose:
  142. '**     Show and process OPTIONS2 dialog
  143. '****************************************************************************
  144. OPTION:
  145.     IF NOAUDIO% = 0 THEN
  146.         r% = PlayWAV(SrcDrive$ + "\option.wav")
  147.     END IF
  148.     SetSymbolValue "RadioDefault", OPTCUR$
  149. OPTL1:
  150.     sz$ = UIStartDlg(CUIDLL$, OPTIONS2, "FRadioDlgProc", APPHELP2, HELPPROC$)
  151.     OPTCUR$ = GetSymbolValue("ButtonChecked")
  152.     IF sz$ = "CONTINUE" THEN
  153.         r% = PlayWAV("")
  154.         UIPop(1)
  155.      ELSEIF sz$ = "REACTIVATE" THEN
  156.         GOTO OPTL1
  157.      ELSE
  158.         UIPopAll
  159.         r% = PlayWAV("")
  160.         GOSUB ASKQUIT
  161.         GOTO OPTL1
  162.     END IF
  163.  
  164. '   MessageBox to show option chosen
  165. '    i% = DoMsgBox(OPTCUR$,"Option selected",MB_TASKMODAL+MB_OK)
  166.  
  167.     IF OPTCUR$ = "1" THEN
  168.         OpProc% = 1
  169.         WriteToLogFile "Option 1 chosen."
  170.         GOTO OPTION1
  171.       ELSEIF OPTCUR$ = "2" THEN
  172.         OpProc% = 2
  173.         WriteToLogFile "Option 2 chosen."
  174.         ChkDrive
  175.         GOTO OPTION2
  176.      ELSE
  177.         OpProc% = 0
  178.         GOSUB ASKQUIT
  179.     END IF
  180.  
  181. '**
  182. '** Purpose:
  183. '**     Process Option 1 from OPTIONS2 dialog.
  184. '****************************************************************************
  185. OPTION1:
  186.  
  187.     Install
  188.  
  189.     GOTO VfW
  190.  
  191. '**
  192. '** Purpose:
  193. '**     Process Option 2 from OPTIONS2 dialog.
  194. '****************************************************************************
  195. OPTION2:
  196.     SetSymbolValue "EditTextIn", DEST$
  197.     SetSymbolValue "EditFocus", "END"
  198.     olddest$ = DEST$
  199. GETPATHL1:
  200.     sz$ = UIStartDlg(CUIDLL$, DESTPATH2, "FEditDlgProc", APPHELP3, HELPPROC$)
  201.  
  202.     IF sz$ = "CONTINUE" THEN
  203.         DEST$ = GetSymbolValue("EditTextOut")
  204.         ''Validate new path.
  205.         IF IsDirWritable(DEST$) = 0 THEN
  206.             UIPop 1
  207.             GOSUB BADPATH
  208.             DEST$ = olddest$
  209.             GOTO GETPATHL1
  210.         END IF
  211.         ''Check drive space
  212.         CheckedDrive$ = MID$(DEST$,1,1)
  213.         IF ChkSpace(CheckedDrive$, FullWantedDiskSize&) = 1 THEN
  214.             UIPop 1
  215.             GOSUB FullTooBig
  216.             DEST$ = olddest$
  217.             GOTO GETPATHL1
  218.         END IF
  219.         UIPop 1
  220.         olddest$ = ""
  221.      ELSEIF sz$ = "REACTIVATE" THEN
  222.         GOTO GETPATHL1
  223.      ELSEIF sz$ = "EXIT" THEN
  224.         UIPop 1
  225.         GOSUB ASKQUIT
  226.         GOTO GETPATHL1
  227.      ELSE
  228.         UIPop 1
  229.         DEST$ = olddest$
  230.         GOTO OPTION
  231.     END IF
  232.  
  233. OPT2PROC:
  234.     CreateDir DEST$, cmoNone
  235.     CreateDir DEST$ + "\AP2EXE", cmoNone
  236.     CreateDir DEST$ + "\DATA", cmoNone
  237.     CreateDir DEST$ + "\SCREENS", cmoNone
  238.  
  239.     UIPopAll
  240.  
  241.     ClearCopyList
  242.     AddSectionFilesToCopyList "